{erl_opts, [warn_unused_vars,warn_shadow_vars,warn_unused_import,
            warn_obsolete_guard,compressed]}.

{xref_checks,[undefined_function_calls,undefined_functions,locals_not_used,
              deprecated_function_calls,warnings_as_errors,deprecated_functions]}.

%% Deps here may duplicate with emqx.git root level rebar.config
%% but there not be any descrpancy.
%% This rebar.config is necessary because the app may be used as a
%% `git_subdir` dependency in other projects.
{deps,
    [ {gproc, {git, "https://github.com/uwiger/gproc", {tag, "0.8.0"}}}
    , {jiffy, {git, "https://github.com/emqx/jiffy", {tag, "1.0.5"}}}
    , {cowboy, {git, "https://github.com/emqx/cowboy", {tag, "2.8.2"}}}
    , {esockd, {git, "https://github.com/emqx/esockd", {tag, "5.8.0"}}}
    , {ekka, {git, "https://github.com/emqx/ekka", {tag, "0.9.0"}}}
    , {gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "2.5.1"}}}
    , {cuttlefish, {git, "https://github.com/emqx/cuttlefish", {tag, "v4.0.1"}}} %% todo delete when plugins use hocon
    , {hocon, {git, "https://github.com/emqx/hocon.git", {tag, "0.5.0"}}}
    , {pbkdf2, {git, "https://github.com/emqx/erlang-pbkdf2.git", {branch, "2.0.4"}}}
    , {recon, {git, "https://github.com/ferd/recon", {tag, "2.5.1"}}}
    , {snabbkaffe, {git, "https://github.com/kafka4beam/snabbkaffe.git", {tag, "0.13.0"}}}
    ]}.

{plugins, [rebar3_proper]}.
{extra_src_dirs, [{"etc", [recursive]}]}.
{profiles, [
   {test,
       [{deps,
           [ meck
           , {bbmustache,"1.10.0"}
           , {emqx_ct_helpers, {git,"https://github.com/zmstone/emqx-ct-helpers", {branch,"hocon"}}}
           , {emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.2.3.1"}}}
           ]},
         {extra_src_dirs, [{"test",[recursive]}]}
       ]}
]}.

{dialyzer, [
    {warnings, [unmatched_returns, error_handling, race_conditions]},
    {plt_location, "."},
    {plt_prefix, "emqx_dialyzer"},
    {plt_apps, all_apps},
    {plt_extra_apps, [hocon]},
    {statistics, true}
   ]
}.
